Multiple-input-multiple-output (MIMO) systems represent an advance in wireless communication. MIMO systems employ one or more (e.g., multiple) antennas at the transmitting and receiving ends of a wireless link to improve the data transmission rate, while holding radio bandwidth and power constant.
A MIMO transmitter transmits an outgoing signal using multiple antennas by demultiplexing the outgoing signal into multiple sub-signals and transmitting the sub-signals from separate antennas. MIMO exploits the multiple signal propagation paths to increase throughput and reduce bit error rates. Using MIMO techniques the rate of transmission increases linearly depending on the local environment.
A portion of a conventional multiple-input-multiple-output (MIMO) wireless broadcast system is shown in FIG. 1.
Referring to FIG. 1, a base station 100 is equipped with M antennas (in FIG. 1, M=3) and the plurality of mobiles 10-1 through 10-t are equipped with one or more antennas. For the sake of clarity, it is assumed that all mobiles 10-1 through 10-t are equipped with only a single antenna.
During transmission, a signal sj transmitted from the j-th antenna (where j=1, . . . , M) of the base station 100 and received by the i-th mobile 10-i (where i=1, . . . , t) is multiplied by a channel coefficient vector hij. Signals qi for i=1, . . . , t that have to be transmitted to respective mobiles 1, 2, . . . , t are mapped into signals sj for j=1, . . . , M transmitted from respective antennas 1, . . . , M. This is known as preceding.
Precoding is generalized beamforming that supports multi-layer transmission in MIMO systems. Precoding enables multiple streams of signals to be emitted from the transmit antennas with independent and appropriate weighting per each antenna such that link throughput is maximized.
Precoding algorithms for multi-user MIMO can be sub-divided into linear and nonlinear preceding types. Linear precoding approaches achieve reasonable throughput performance with lower complexity relative to nonlinear precoding approaches.
Returning to FIG. 1, conventionally, the base station 100 implements a linear precoding algorithm as follows.
The channel coefficients hij form a channel matrix,
  H  =            [                                                  h              1                                                                          h              2                                                            ⋮                                                              h              t                                          ]        =                  [                                                                              h                  11                                ,                                  h                  12                                ,                …                ⁢                                                                  ,                                  h                                      1                    ⁢                                                                                  ⁢                    M                                                                                                                                            h                  21                                ,                                  h                  22                                ,                …                ⁢                                                                  ,                                  h                                      2                    ⁢                                                                                  ⁢                    M                                                                                                          ⋮                                                                                            h                                      t                    ⁢                                                                                  ⁢                    1                                                  ,                                  h                                      t                    ⁢                                                                                  ⁢                    2                                                  ,                …                ⁢                                                                  ,                                  h                  tM                                                                    ]            .      The entries of the channel matrix H are the channel coefficients of the channel coefficient vectors hi=(hi1, hi2, . . . , hiM), where i=1, 2, . . . , t.
The base station 100 precodes signals
         [                                        q            1                                                            q            2                                                ⋮                                                  q            t                                ]  to be transmitted to corresponding mobiles by computing the vector S according to equation (1) shown below in which G is an M×t complex matrix, such that Tr(GG*)=1. The operator Tr(A) is the standard trace of operators of a square matrix A. For example, if aij are elements of A, and A is an M×M matrix, then
      Tr    ⁡          (      A      )        =            ∑              i        =        1            M        ⁢                  a        ii            .      
                    S        =                              [                                                                                s                    1                                                                                                                    s                    2                                                                                                ⋮                                                                                                  s                    t                                                                        ]                    =                      G            ⁡                          [                                                                                          q                      1                                                                                                                                  q                      2                                                                                                            ⋮                                                                                                              q                      t                                                                                  ]                                                          (        1        )            
Equation (1) uses standard matrix multiplication to spread signals q1, q2, . . . , qt into signals s1, s2, . . . , sM. Signals q1, q2, . . . , qt are signals to be transmitted to mobiles 10-1, 10-2, . . . , 10-t, respectively. In this example, the precoding of the signals q1, q2, . . . , qt spreads each of the signals among the M antennas at the base station 100.
The base station 100 then transmits the precoded signals s1, s2, . . . , sM from base station antennas 1, 2, . . . , M, respectively.
At the i-th mobile 10-i, for example, the resultant received signal xi is equal to the linear combination of the signals sent from all M antennas of the base station 100 and the additive noise zi. More specifically, the received signal xi is given by equation (2) shown below.xi=s1hi1+s2hi2+ . . . +sMhiM+zi  (2)
Currently, there exists only methods for locating a precoding matrix G based on the assumption that the actual channel matrix H is equal to the estimated channel matrix Ĥ, which is far from reality.